/* ==========================================================================
   基础样式重置 - 不包含任何布局样式
   仅重置浏览器默认样式，不添加任何布局相关规则
   ========================================================================== */

/* 1. 基础元素重置 */
html {
  line-height: 1.15; /* 保持默认行高 */
  -webkit-text-size-adjust: 100%; /* 防止iOS横屏时字体放大 */
}

body {
  margin: 0; /* 仅移除默认边距 */
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}

/* 2. 块级元素重置 */
article, aside, footer, header, nav, section {
  display: block; /* 仅确保HTML5元素正确显示 */
}

/* 3. 标题重置 */
h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0; /* 仅移除默认边距 */
}

/* 4. 文本元素重置 */
p {
  margin: 0; /* 仅移除默认边距 */
}

strong, b {
  font-weight: bolder; /* 仅保持语义化加粗 */
}

em, i {
  font-style: italic; /* 仅保持语义化斜体 */
}

small {
  font-size: 80%; /* 保持默认缩小比例 */
}

/* 5. 链接重置 */
a {
  background-color: transparent; /* 移除iOS默认灰色背景 */
  text-decoration: none; /* 移除下划线 */
  color: inherit; /* 继承父元素颜色 */
}

/* 6. 列表重置 */
ul, ol {
  margin: 0;
  padding: 0;
  list-style: none; /* 移除默认列表样式 */
}

/* 7. 表单元素重置 */
button, input, optgroup, select, textarea {
  font-family: inherit; /* 继承字体 */
  font-size: 100%; /* 防止iOS缩放 */
  line-height: 1.15; /* 保持默认行高 */
  margin: 0; /* 移除默认边距 */
}

button, input {
  overflow: visible; /* 修正Firefox按钮样式 */
}

button, select {
  text-transform: none; /* 移除按钮文本转换 */
}

button, [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button; /* 修正Safari按钮样式 */
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none; /* 移除Firefox内边框 */
  padding: 0; /* 移除内边距 */
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; /* 保持Firefox焦点样式 */
}

fieldset {
  padding: 0; /* 移除内边距 */
  margin: 0; /* 移除外边距 */
  border: 0; /* 移除边框 */
}

legend {
  padding: 0; /* 移除内边距 */
}

progress {
  vertical-align: baseline; /* 修正进度条对齐 */
}

textarea {
  overflow: auto; /* 修正IE文本框滚动条 */
  resize: vertical; /* 允许垂直调整大小 */
}

/* 8. 媒体元素重置 */
img {
  border-style: none; /* 移除图片边框 */
  max-width: 100%; /* 防止图片溢出 */
  height: auto; /* 保持比例 */
}

svg {
  fill: currentColor; /* SVG继承文本颜色 */
}

/* 9. 表格重置 */
table {
  border-collapse: collapse; /* 合并边框 */
  border-spacing: 0; /* 移除单元格间距 */
}

/* 10. 隐藏元素 */
[hidden] {
  display: none !important; /* 确保hidden属性生效 */
}

/* 11. 可访问性增强 */
[aria-busy="true"] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled="true"] {
  cursor: not-allowed;
}

/* 12. 焦点样式重置 */
:focus {
  outline: 2px solid #4285f4; /* 添加可见焦点样式 */
  outline-offset: 2px;
}

:focus:not(:focus-visible) {
  outline: none; /* 移除非键盘触发的焦点样式 */
}

/* 13. 打印样式重置 */
@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }

  a {
    text-decoration: underline;
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
  blockquote {
    page-break-inside: avoid;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}
